1. Field of the Invention
This invention is related to the field of processors and, more particularly, to dependency checking using scoreboards in processors.
2. Description of the Related Art
Processors generally include some mechanism for performing dependency checking between instructions. In pipelined processors, dependency checking may be used to ensure that source operands for a first instruction which are generated by one or more preceding instructions (i.e. the preceding instruction writes a result to one of the source operands) are not read for the first instruction until the preceding instruction(s) update the source operands. If multiple parallel pipelines are used, dependency checking may be used to ensure that several instructions which write the same destination operand perform those writes in the correct order. Additionally, if out of order execution is employed, dependency checking may be used to ensure that each instruction receives the proper operands and that updates to operands occur in the correct order.
One mechanism for dependency checking is to use a scoreboard to track which operands (e.g. registers) have pending writes corresponding to instructions which are outstanding within the processor. The scoreboard may be checked to determine if dependencies exist for a given instruction.